package com.demo2do.fms.admin.service.data;

import java.util.List;
import java.util.Map;

import com.demo2do.core.entity.page.Page;
import com.demo2do.fms.admin.entity.report.data.FacilityDistanceReportSearch;
import com.demo2do.fms.admin.service.DataService;
import com.demo2do.fms.entity.authority.Organization;
import com.demo2do.fms.entity.data.business.FacilityDistance;
import com.demo2do.fms.entity.data.business.LoadPlace;

/**
 * 
 * @author Ysy
 */
public interface FacilityDistanceService extends DataService<FacilityDistance> {
    
    /**
     * 
     * @param orgIds
     * @return
     */
    public int count(List<Long> orgIds);
    
    /**
     * 
     * @param orgIds
     * @param page
     * @return
     */
    public List<FacilityDistance> list(List<Long> orgIds, Page page);
    
    /**
     * 
     * @param organization
     * @param fromLoadPlace
     * @param toLoadPlace
     * @return
     */
    public List<FacilityDistance> list(Organization organization, LoadPlace fromLoadPlace, LoadPlace toLoadPlace);
    
    /**
     * 
     * @param facilityDistance
     * @param operator
     */
    public void create(FacilityDistance facilityDistance, Long operator);

    /**
     * 
     * @param operator
     * @param facilityDistance
     */
    public void edit(Long operator , FacilityDistance facilityDistance);
    
    /**
     * 
     * @param search
     * @return
     */
    public List<Map<String, Object>> exportAll(FacilityDistanceReportSearch search);
    
}
